.text
.globl a
.data
.align 4
.type a, @object
.size a, 4
a:
	.long 11
.globl b
.align 4
.type b, @object
.size b, 4
b:
	.long 22
.globl result
.bss
.align 4
.type result, @object
.size result, 4

result:
	.zero 4

.section .rodata
.LC0:
	.string "The answer is %d\n"

.text
.globl main
main:
	# &argc
	leal 4(%esp), %ecx
	andl $-16, %esp
	# argv
	pushl -4(%ecx)
	pushl %ebp
	movl %esp, %ebp
	pushl %ecx

	subl $4, %esp

	pusha
	movl a, %eax
	movl b, %ebx
	imul %ebx, %eax
	movl %eax, result
	popa

	subl $8, %esp
	movl result, %eax
	pushl %eax
	pushl $.LC0
	call printf
	add $16, %esp

	movl $0, %eax
	movl -4(%ebp), %ecx
	leave
	leal -4(%ecx), %esp
	ret
